3
תגובות

שמירת נתונים בJSON

פתח yehuda4ee ,
התחלתח לבנות מערכת קטנה והחלטתי להתנסות בJSON.
המערכת בנויה ככה:
יש טופס ששולחים את הפרטים. והפרטים נשמרים ונכתבים בקובץ JSON.
$fp = fopen('hours.json', 'a');
fwrite($fp, json_encode($json));
fclose($fp);


והקובץ JSON נראה ככה:
{
  "work": [
    {
      "date":"01\/01\/2015",
      "start":"18:00",
      "end":"23:00",
      "location":null,
      "notes":null,
      "hours":5
    },
    {
      "date":"03\/09\/2015",
      "start":"19:00",
      "end":"23:00",
      "location":null,
      "notes":null,
      "hours":4  
    }
]
}


ובדף הראשי יש טבלה ששולפת מידע מהJSON ומעבירה בללואת FOREACH.
הבעיה, כל פעם שאני שומר את המידע הוא הולך לסוף הדף והורס את המערך..
למישהו יש רעיון איך לפתור את זה?

3 תשובות

avatar ענה Splash ב 14 לספטמבר 2015 #

אם יש לך כמויות של מידע זה יהיה פשוט בזבוז של משאבים לשמור את הנתונים ככה שכן אתה צריך כל הזמן להמיר את ה json למערך.

בכל מקרה כדי שזה יעבוד בהכנסה אתה צריך להמיר אותו למערך ,ליצור רשומה חדשה ואז להשתמש ב json_encode כדי לשמור.

avatar ענה yehuda4ee ב 14 לספטמבר 2015 #

אין לי הרבה מידע. זה בדיוק הסיבה שבחרתי בjson.
ואם תבדוק למעלה תראה שזה מה שאני עושה..
הבעיה, אני לא מצליח לעשות שהמידע שאני שומר כל פעם יכנס למערך של work. במקום זה הוא הולך לסוף הקובת ופותח מערך חדש..

avatar ענה Splash ב 15 לספטמבר 2015 #

זה כי אתה פותח אותו עם המוד a במקום w.אתה יכול למצוא הסבר מפורט על כל הסוגים שקיימים בתיעוד fopen